const vueBus = {
  /* 第一步出定义state数据 */
  state: {
    count: 0,
    list: [1, 2, 3, 4, 5, 6, 7, 8, 9]
  },
  /* 第二步定义state中方法 */
  mutations: {
    addIncrement(state, n) {
      state.count += n
    },
    decrease(state) {
      state.count--
    },
    listArray(state, listParms) {
      state.list = listParms
    }
  },
  /* 第三部异步操作请求数据 */
  // 1:actions中使用commit('mutation方法名')触发mutation中的方法
  // 在组件使用this.$store.dispath('increment')触发actions中的方法
  actions: {
    asyncIncrement(context, num) {
      //console.log(num) //组建中传入的10
      return new Promise(resolve => {
        context.commit('addIncrement', 100) //触发addIncrement传入参数，获取mutation执行后最终的值
        resolve()
      })
    },
    //传入两个参数commit和state
    list({ commit, state }) {
      commit('listArray', [0, 0, 0, 0]) //传入一个数组[0,0,0,0]
    }
  }
}

export default vueBus
